具有兩個維度(索引)的陣列常用來表示數值表格table of vaules,其值以列rows和行columns的方式排列,存取表格中特定元素時,需要用到兩個索引,依慣例,第一個索引代表元素的列號,第二個代表行號,需索引存取元素的陣列稱為二維陣列two dimensional arrays,又稱2D陣列2-D arrays,具有兩個維度以上的陣列稱為多為陣列multidimensional arrays,下程式碼
#include <iostream>
#include <array>
using namespace std;
const size_t rows=2;
const size_t columns=3;
void printArray(const array<array<int, columns>, rows>&);
int main()
{
array<array<int, columns>, rows>array1={1,2,3,4,5,6};
array<array<int, columns>, rows>array2={1,2,3,4,5};
cout<<"Vaules in array1 by row are: "<<endl;
printArray(array1);
cout<<"\nVaules in array2 by row are: "<<endl;
printArray(array2);
}
void printArray(const array<array<int, columns>, rows> &a)
{
for(auto const &row:a)
{
for(auto const &element:row)
cout<<element<<' ';
cout<<endl;
}
}
上面的程式碼中我們的標頭檔有兩個一個基本iostram輸入輸出和array陣列要用的,const size_t rows=2我們的行是固定的2因為const,列就是3也是固定,然後我們再設一個函示printArray讓他只能做一次因為void,main函示裡面先宣告兩個二維數列一個array1={1,2,3,4,5,6}和array2={1,2,3,4,5},配合void printArray函示裡面的兩個for迴圈,最後就可將就果印出來
#include <stdio.h>
int main()
{
int N;
printf("N= ");
scanf("%d\n", &N);
int numberOfDivisors=0;
int number;
for(number=2;number<=N;number++)
{
if(N%number==0)
{
++numberOfDivisors;
}
}
if(numberOfDivisors==0)
{
printf("Yes\n");
}else
{
printf("No\n");
}
return 0;
}
上面的程式碼就是判斷質數的方法,for迴圈配合if過濾判斷是否為質數並將他印出如果numberOfDivisors==0就是質數,其他就不是質數最後將結果印出來就好了